#pragma once

#include "StateGraph.h"
#include "StateGraphData.h"
#include "StateResult.h"

class CFSMMgr
{

	//================================== METHODS ==============================

public:
	//! Update method
	bool_t Update();
	//! Build method
	void Build(const CStateGraphDataPtr &data); 
	//! Set state graph
	void SetStateGraph(CStateGraph *pStateGraph);

	//================================ DATA MEMBERS ===========================

protected:
	//! State graph
	CStateBasePtr m_pStateRoot;
	CStateResult m_stateResult;
};